<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        
    </style>
</head>
<body>
    
</body>
<script>
    
    // var a = 10;
    // function fn(){
    //     var b = 20;
    //     // 子可以使用父
    //     console.log(a);
    //     console.log(b);
    // }
    // fn();
    // console.log(a);
    // // 父不可以使用子
    // console.log(b);


    // 兄弟之间不能互相使用
    // function fn1(){
    //     var a = 10;
    //     console.log(b)
    // }
    // function fn2(){
    //     var b = 20;
    //     console.log(a)
    // }
    // fn1();
    // fn2();


    // 作用域链
    // var a = 10;
    function fn1(){
        // var a = 20;
        function fn2(){
            // var a = 30;
            function fn3(){
                // var a = 40;
                function fn4(){
                    // var a = 50;

                    a = "hello";

                    console.log("fn4的a：", a);
                }
                fn4()
                console.log("fn3的a：", a);
            }
            fn3();
            console.log("fn2的a：", a);
        }
        fn2();
        console.log("fn1的a：", a);
    }
    fn1();
    console.log("全局的a：", a);




    // ===========


    ;(function(){
        var a = 10;
        function fun1(){
            console.log(a);
        }
        function fun2(){
            console.log(a);
        }
        function fun3(){
            console.log(a);
        }
        fun1();
        fun2();
        fun3();
    })();

    // 匿名函数：自动执行
    // (function(){})()


    var str = "hello";;;;;;;;

    ;(function(){

        console.log(str);

    })();


</script>
</html>